﻿#define _CRT_SECURE_NO_WARNINGS
class Time
{
public:
    Time(int hour) :_hour(hour) // 只有有参构造函数
    {
    }
private:
    int _hour;
};

class Date
{
public:
    Date(int& x, int year = 1, int month = 1, int day = 1)
        :_year(year)
        , _month(month)
        , _day(day)
        , _t(12) // 如果不在初始化列表里给没有默认构造函数的_t传值 ，报错：“Time” : 没有合适的默认构造函数可⽤
        , _ref(x) // 如果不在初始化列表里初始化引用类型，发生报错： 必须初始化引⽤
        , _n(1) // 如果不在初始化列表里初始化const类型，发生报错：必须初始化常量限定类型的对象
    {
        //函数体内部...
    }
private:
    int _year;
    int _month;
    int _day;
    Time _t; // 没有默认构造
        int& _ref; // 引⽤
        const int _n; // const
};